package com.nantong.admin.domain.dto;

import lombok.Data;

import java.io.Serial;
import java.io.Serializable;

/**
 * 登录结果
 *
 * @author nantong
 */
@Data
public class LoginResultDTO implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * 访问令牌
     */
    private String accessToken;

    /**
     * 刷新令牌
     */
    private String refreshToken;

    /**
     * 令牌类型
     */
    private String tokenType = "Bearer";

    /**
     * 过期时间(秒)
     */
    private Long expiresIn;

    /**
     * 用户信息
     */
    private UserInfoDTO userInfo;

    @Data
    public static class UserInfoDTO {
        /**
         * 用户ID
         */
        private Long userId;

        /**
         * 用户名
         */
        private String username;

        /**
         * 用户昵称
         */
        private String nickname;

        /**
         * 用户头像
         */
        private String avatar;

        /**
         * 用户邮箱
         */
        private String email;

        /**
         * 手机号码
         */
        private String phonenumber;
    }

}
